home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 #2 / Ham Radio 2000 - Volume 2.iso / HAMV2 / MISC / HCAL-27 / PRECICAP.BAS (.txt) < prev    next >
Encoding:
GW-BASIC  |  1997-01-29  |  2.6 KB  |  99 lines

  1. 10  'PRECICAP - Precision Capacitor - 12 AUG 95 rev. 27 SEP 96
  2. 20  IF EX$=""THEN EX$="EXIT"
  3. 30  CLS:KEY OFF
  4. 40  COLOR 7,0,1
  5. 50  UL$=STRING$(80,205)  'underline
  6. 60  ER$=STRING$(80,32)   'erase
  7. 70  U1$="########,##.#"
  8. 80  U2$="#########.###"
  9. 90  O$=" pF"
  10. 100  '
  11. 110  COLOR 15,2
  12. 120  PRINT " PRECISION CAPACITOR";TAB(57);"by George Murphy VE3ERP ";
  13. 130  COLOR 1,0:PRINT STRING$(80,"<0xDF!>");
  14. 140  COLOR 7,0
  15. 150  '
  16. 160  '.....start
  17. 170  VIEW PRINT 3 TO 24:CLS:VIEW PRINT
  18. 180  '.....diagram
  19. 190  COLOR 0,7
  20. 200  T=24       'tab
  21. 210  LOCATE  3,T:PRINT "                                   "
  22. 220  LOCATE  4,T:PRINT "  CALLDEFSNGSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND C SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDDEFDBLCALL  "
  23. 230  LOCATE  5,T:PRINT "  CALL                             CALL  "
  24. 240  LOCATE  6,T:PRINT "  CALL                             CALL  "
  25. 250  LOCATE  7,T:PRINT "  CALL                             CALL  "
  26. 260  LOCATE  8,T:PRINT "        C1               C2        "
  27. 270  LOCATE  9,T:PRINT " X THENTHENTHENTHENTHEN<0xB5!>PSETTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHEN<0xB5!>PSETTHENTHENTHENTHENTHEN Y "
  28. 280  LOCATE 10,T:PRINT "                                   "
  29. 290  COLOR 7,0
  30. 300  LOCATE 11:PRINT UL$;
  31. 310  '
  32. 320  COLOR 0,7:LOCATE CSRLIN,23
  33. 330  PRINT " Press 1 to continue or 0 to EXIT... "
  34. 340  COLOR 7,0
  35. 350  Z$=INKEY$:IF Z$=""THEN 350
  36. 360  IF Z$="0"THEN CLS:RUN EX$
  37. 370  IF Z$="1"THEN 390
  38. 380  GOTO 350
  39. 390  LOCATE CSRLIN-1:PRINT STRING$(80,32);:LOCATE CSRLIN-1
  40. 400  '
  41. 410  '.....inputs
  42. 420  PRINT " ENTER:";:COLOR 0,7
  43. 430  INPUT " Sought precise capacitance between X & Y........(pF)=";C
  44. 440  COLOR 7,0
  45. 450  LOCATE CSRLIN-1:PRINT "       ";
  46. 460  LOCATE CSRLIN,57:COLOR 0,7:PRINT "....C =";
  47. 470  LOCATE CSRLIN,64:PRINT USING U1$;C;:PRINT O$:COLOR 7,0
  48. 480  INPUT " ENTER: Value of next standard capacitor greater than C....C1 =";C1
  49. 490  LOCATE CSRLIN-1,1:PRINT "       ";
  50. 500  LOCATE CSRLIN,57:PRINT "...C1 =";
  51. 510  LOCATE CSRLIN,64:PRINT USING U1$;C1;:PRINT O$
  52. 520  '
  53. 530  CX=C/(1-C/C1)          'exact series capacitor
  54. 540  '
  55. 550  PRINT "        Value of capacitor C2 to obtain C precisely.......... =";
  56. 560  PRINT USING U1$;CX;:PRINT O$
  57. 570  '
  58. 580  INPUT " ENTER: Value of closest standard capacitor................C2 =";C2
  59. 590  LOCATE CSRLIN-1,1:PRINT "       ";
  60. 600  LOCATE CSRLIN,57:PRINT "...C2 =";
  61. 610  LOCATE CSRLIN,64:PRINT USING U1$;C2;:PRINT O$
  62. 620  CX=1/(1/C1+1/C2)
  63. 630  PRINT "       ";:COLOR 0,7
  64. 640  PRINT " Capacitance of C1 & C2 in series between X & Y.....Cx =";
  65. 650  COLOR 0,7:PRINT USING U1$;CX;:PRINT O$
  66. 660  '
  67. 670  D=ABS(C-CX)/C*100
  68. 680  COLOR 15,0
  69. 690  PRINT "        DIVERGENCE of Cx from C.............................. =";
  70. 700  PRINT USING U2$;D;:PRINT " %"
  71. 710  COLOR 7,0
  72. 720  PRINT UL$;:GOSUB 750
  73. 730  GOTO 160    'start
  74. 740  '
  75. 750  '.....add to diagram
  76. 760  N=1
  77. 770  IF 10^N<=CX THEN N=N+1:GOTO 770
  78. 780  UX$=STRING$(N,"#")+".#"
  79. 790  '
  80. 800  COLOR 0,7
  81. 810  LOCATE 4,T+10:PRINT " Cx= ";USING UX$;CX;:PRINT " pF"
  82. 820  LOCATE 7,T+4:PRINT C1;"pF"
  83. 830  LOCATE 7,T+21:PRINT C2;"pF"
  84. 840  COLOR 7,0
  85. 850  '
  86. 860  'HARDCOPY
  87. 870  GOSUB 980:LOCATE 25,2:COLOR 14,6
  88. 880  PRINT " Press 1 to print screen, 2 to print screen & ";
  89. 890  PRINT "advance paper, or 3 to continue.";:COLOR 7,0
  90. 900  Z$=INKEY$:IF Z$="3"THEN GOSUB 980:RETURN
  91. 910  IF Z$="1"OR Z$="2"THEN GOSUB 980:GOTO 930
  92. 920  GOTO 900
  93. 930  FOR QX=1 TO 24:FOR QY=1 TO 80
  94. 940  LPRINT CHR$(SCREEN(QX,QY));
  95. 950  NEXT QY:NEXT QX
  96. 960  IF Z$="2"THEN LPRINT CHR$(12)
  97. 970  GOTO 870
  98. 980  LOCATE 25,1:PRINT STRING$(80,32);:RETURN
  99.